package com.smart.community.region.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.util.List;
import java.util.Map;

/**
 * 分区绘图保存DTO
 * 
 * @author Wu.Liang
 * @date 2025-01-30
 */
@Data
@Schema(description = "分区绘图保存DTO")
public class ZoneDrawingSaveDTO {
    
    @Schema(description = "时间戳")
    private String timestamp;
    
    @NotNull(message = "社区ID不能为空")
    @Schema(description = "社区ID")
    private Long communityId;
    
    @Schema(description = "物业公司ID")
    private Long propertyCompanyId;
    
    @Schema(description = "社区信息")
    private Object communityInfo;
    
    @Schema(description = "分区列表")
    private List<Object> zones;
    
    @Schema(description = "已放置楼栋列表")
    private List<Object> placedBuildings;
    
    @Schema(description = "可用楼栋列表")
    private List<Object> availableBuildings;
    
    @Schema(description = "画布状态")
    private Object canvasState;
    
    @Schema(description = "操作历史")
    private Object operationHistory;
    
    @Schema(description = "楼栋状态映射")
    private Map<String, String> buildingStatus;
}
